package xuanke;

public class Student {
    private String id;       // 学生编号
    private String name;     // 学生姓名
    private String gender;   // 学生性别
    private Course course;   // 所选课程（关联课程对象）

    // 构造方法：初始化学生基本信息
    public Student(String id, String name, String gender) {
        this.id = id;
        this.name = name;
        this.gender = gender;
    }

    // 选课方法：关联学生与课程
    public void selectCourse(Course course) {
        this.course = course;
    }

    // 退课方法：取消所选课程
    public void dropCourse() {
        this.course = null;
    }

    // 打印课表方法：输出学生所选课程的详细信息
    public void printSchedule() {
        if (course != null) {
            System.out.println("===== 学生 " + name + " 的课表 =====");
            System.out.println("课程编号：" + course.getId());
            System.out.println("课程名称：" + course.getName());
            System.out.println("上课地点：" + course.getLocation());
            System.out.println("上课时间：" + course.getTime());
            System.out.println("授课教师：" + course.getTeacher().getName());
            System.out.println("=======================\n");
        } else {
            System.out.println("学生 " + name + " 暂无选课！\n");
        }
    }

    // Getter方法（学生属性多为只读，可根据需求添加Setter）
    public String getId() { return id; }
    public String getName() { return name; }
    public String getGender() { return gender; }
}
